@(currentPage: Sorteo.Page, currentSortBy: String, currentOrder: String, currentFilter: String)

@****************************************
* Helper generating navigation links    *
****************************************@
@link(newPage:Int, newSortBy:String) = @{
    
    var sortBy = currentSortBy
    var order = currentOrder
    
    if(newSortBy != null) {
        sortBy = newSortBy
        if(currentSortBy == newSortBy) {
            if(currentOrder == "asc") {
                order = "desc"
            } else {
                order = "asc"
            }
        } else {
            order = "asc"
        }
    }
    
    // Generate the link
    routes.Sorteos.listSorteo(newPage, sortBy, order, currentFilter)
    
}

@**********************************
* Helper generating table headers *
***********************************@
@header(key:String, title:String) = {
    <th class="@key.replace(".","_") header @if(currentSortBy == key) @{if(currentOrder == "asc") "headerSortDown" else "headerSortUp"}">
        <a href="@link(0, key)">@title</a>
    </th>
}

@main(Html("Lista de Sorteos")) {
    
    <h1 id="homeTitle">@Messages("sorteos.list.title", currentPage.getTotalRowCount)</h1>

    @if(flash.containsKey("success")) {
        <div class="alert-message warning">
            <strong>Hecho!</strong> @flash.get("success")
        </div>
    } 

    <div id="actions">
        <table>
        <tbody>
            <tr>
                <td >
                    <form action="@link(0, "nomSorteo")" method="GET">
                        <input type="search" id="searchbox" name="f" value="@currentFilter" placeholder="Filtrar por nombre...">
                        <input type="submit" id="searchsubmit" value="Filtrar por nombre" class="btn primary">
                    </form>
                </td>
                <td>
                    <a class="btn success" id="add" href="@routes.Sorteos.newSorteo()">Crear nuevo sorteo</a>
                </td>
            </tr>
        </tbody>
        </table>
    </div>
    
    @if(currentPage.getTotalRowCount == 0) {
        
        <div class="well">
            <em>No hay sorteos que mostrar</em>
        </div>
        
    } else {
        
        <table class="computers zebra-striped">
            <thead>
                <tr>
                    @header("codSorteo", "Codigo")
                    @header("nomSorteo", "Nombre")
                    @header("fechaIniRegParticipante", "Inicio")
                    @header("fechaFinRegParticipante", "Fin")
                    @header("metodoSorteo", "Metodo")
                    @header("fechaSorteo", "Fecha de Sorteo")
                    @header("codSorteo", "Premios")
                    @header("codSorteo", "Participantes")
                </tr>
            </thead>
            <tbody>

                @for(Sorteo <- currentPage.getList) {
                    <tr>
                        <td>@Sorteo.codSorteo</td>
                        <td>
                            @Sorteo.nomSorteo                            
                        </td>
                        <td>
                            @if(Sorteo.fechaIniRegParticipante == null) {
                                <em>-</em>
                            } else {
                                @Sorteo.fechaIniRegParticipante.format("dd MMM yyyy")
                            }
                        </td>
                        <td>
                           @if(Sorteo.fechaFinRegParticipante == null) {
                                <em>-</em>
                            } else {
                                @Sorteo.fechaFinRegParticipante.format("dd MMM yyyy")
                            }
                        </td>
                        <td>
                            @if(Sorteo.metodoSorteo == null) {
                                <em>-</em>
                            } else {
                                @Sorteo.metodoSorteo
                            }
                        </td>
                        <td>
                            @if(Sorteo.fechaSorteo == null) {
                                <em>-</em>
                            } else {
                                @Sorteo.fechaSorteo.format("dd MMM yyyy")
                            }
                        </td>
                        <td>
                            <a class="btn primary"  href="@routes.Sorteos.listPremios(codSorteo=Sorteo.codSorteo)">Ver Premios</a>
                        </td>
                        <td>
                            <a class="btn primary" href="@routes.Sorteos.listParticipantes(codSorteo=Sorteo.codSorteo)">Ver Participantes</a>
                        </td>
                    </tr>
                }

            </tbody>
        </table>

        <div id="pagination" class="pagination">
            <ul>
                @if(currentPage.hasPrev) {
                    <li class="prev">
                        <a href="@link(currentPage.getPageIndex - 1, null)">&larr; Anterior</a>
                    </li>
                } else {
                    <li class="prev disabled">
                        <a>&larr; Anterior</a>
                    </li>
                }
                <li class="current">
                    <a>Mostrando @currentPage.getDisplayXtoYofZ</a>
                </li>
                @if(currentPage.hasNext) {
                    <li class="next">
                        <a href="@link(currentPage.getPageIndex + 1, null)">Siguiente &rarr;</a>
                    </li>
                } else {
                    <li class="next disabled">
                        <a>Siguiente &rarr;</a>
                    </li>
                }
            </ul>
        </div>
        
    }
        
}

            